package com.zjxd.business.web.model.pojo;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class TBOrderExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TBOrderExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andOrderidIsNull() {
            addCriterion("orderid is null");
            return (Criteria) this;
        }

        public Criteria andOrderidIsNotNull() {
            addCriterion("orderid is not null");
            return (Criteria) this;
        }

        public Criteria andOrderidEqualTo(Long value) {
            addCriterion("orderid =", value, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidNotEqualTo(Long value) {
            addCriterion("orderid <>", value, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidGreaterThan(Long value) {
            addCriterion("orderid >", value, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidGreaterThanOrEqualTo(Long value) {
            addCriterion("orderid >=", value, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidLessThan(Long value) {
            addCriterion("orderid <", value, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidLessThanOrEqualTo(Long value) {
            addCriterion("orderid <=", value, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidIn(List<Long> values) {
            addCriterion("orderid in", values, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidNotIn(List<Long> values) {
            addCriterion("orderid not in", values, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidBetween(Long value1, Long value2) {
            addCriterion("orderid between", value1, value2, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderidNotBetween(Long value1, Long value2) {
            addCriterion("orderid not between", value1, value2, "orderid");
            return (Criteria) this;
        }

        public Criteria andOrderstateIsNull() {
            addCriterion("orderstate is null");
            return (Criteria) this;
        }

        public Criteria andOrderstateIsNotNull() {
            addCriterion("orderstate is not null");
            return (Criteria) this;
        }

        public Criteria andOrderstateEqualTo(Long value) {
            addCriterion("orderstate =", value, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateNotEqualTo(Long value) {
            addCriterion("orderstate <>", value, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateGreaterThan(Long value) {
            addCriterion("orderstate >", value, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateGreaterThanOrEqualTo(Long value) {
            addCriterion("orderstate >=", value, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateLessThan(Long value) {
            addCriterion("orderstate <", value, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateLessThanOrEqualTo(Long value) {
            addCriterion("orderstate <=", value, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateIn(List<Long> values) {
            addCriterion("orderstate in", values, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateNotIn(List<Long> values) {
            addCriterion("orderstate not in", values, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateBetween(Long value1, Long value2) {
            addCriterion("orderstate between", value1, value2, "orderstate");
            return (Criteria) this;
        }

        public Criteria andOrderstateNotBetween(Long value1, Long value2) {
            addCriterion("orderstate not between", value1, value2, "orderstate");
            return (Criteria) this;
        }

        public Criteria andUseridIsNull() {
            addCriterion("userid is null");
            return (Criteria) this;
        }

        public Criteria andUseridIsNotNull() {
            addCriterion("userid is not null");
            return (Criteria) this;
        }

        public Criteria andUseridEqualTo(Long value) {
            addCriterion("userid =", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridNotEqualTo(Long value) {
            addCriterion("userid <>", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridGreaterThan(Long value) {
            addCriterion("userid >", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridGreaterThanOrEqualTo(Long value) {
            addCriterion("userid >=", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridLessThan(Long value) {
            addCriterion("userid <", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridLessThanOrEqualTo(Long value) {
            addCriterion("userid <=", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridIn(List<Long> values) {
            addCriterion("userid in", values, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridNotIn(List<Long> values) {
            addCriterion("userid not in", values, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridBetween(Long value1, Long value2) {
            addCriterion("userid between", value1, value2, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridNotBetween(Long value1, Long value2) {
            addCriterion("userid not between", value1, value2, "userid");
            return (Criteria) this;
        }

        public Criteria andChargmoneyIsNull() {
            addCriterion("chargmoney is null");
            return (Criteria) this;
        }

        public Criteria andChargmoneyIsNotNull() {
            addCriterion("chargmoney is not null");
            return (Criteria) this;
        }

        public Criteria andChargmoneyEqualTo(BigDecimal value) {
            addCriterion("chargmoney =", value, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyNotEqualTo(BigDecimal value) {
            addCriterion("chargmoney <>", value, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyGreaterThan(BigDecimal value) {
            addCriterion("chargmoney >", value, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("chargmoney >=", value, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyLessThan(BigDecimal value) {
            addCriterion("chargmoney <", value, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("chargmoney <=", value, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyIn(List<BigDecimal> values) {
            addCriterion("chargmoney in", values, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyNotIn(List<BigDecimal> values) {
            addCriterion("chargmoney not in", values, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("chargmoney between", value1, value2, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andChargmoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("chargmoney not between", value1, value2, "chargmoney");
            return (Criteria) this;
        }

        public Criteria andPilenumIsNull() {
            addCriterion("pilenum is null");
            return (Criteria) this;
        }

        public Criteria andPilenumIsNotNull() {
            addCriterion("pilenum is not null");
            return (Criteria) this;
        }

        public Criteria andPilenumEqualTo(String value) {
            addCriterion("pilenum =", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumNotEqualTo(String value) {
            addCriterion("pilenum <>", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumGreaterThan(String value) {
            addCriterion("pilenum >", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumGreaterThanOrEqualTo(String value) {
            addCriterion("pilenum >=", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumLessThan(String value) {
            addCriterion("pilenum <", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumLessThanOrEqualTo(String value) {
            addCriterion("pilenum <=", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumLike(String value) {
            addCriterion("pilenum like", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumNotLike(String value) {
            addCriterion("pilenum not like", value, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumIn(List<String> values) {
            addCriterion("pilenum in", values, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumNotIn(List<String> values) {
            addCriterion("pilenum not in", values, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumBetween(String value1, String value2) {
            addCriterion("pilenum between", value1, value2, "pilenum");
            return (Criteria) this;
        }

        public Criteria andPilenumNotBetween(String value1, String value2) {
            addCriterion("pilenum not between", value1, value2, "pilenum");
            return (Criteria) this;
        }

        public Criteria andServermoneyIsNull() {
            addCriterion("servermoney is null");
            return (Criteria) this;
        }

        public Criteria andServermoneyIsNotNull() {
            addCriterion("servermoney is not null");
            return (Criteria) this;
        }

        public Criteria andServermoneyEqualTo(BigDecimal value) {
            addCriterion("servermoney =", value, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyNotEqualTo(BigDecimal value) {
            addCriterion("servermoney <>", value, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyGreaterThan(BigDecimal value) {
            addCriterion("servermoney >", value, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("servermoney >=", value, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyLessThan(BigDecimal value) {
            addCriterion("servermoney <", value, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("servermoney <=", value, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyIn(List<BigDecimal> values) {
            addCriterion("servermoney in", values, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyNotIn(List<BigDecimal> values) {
            addCriterion("servermoney not in", values, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("servermoney between", value1, value2, "servermoney");
            return (Criteria) this;
        }

        public Criteria andServermoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("servermoney not between", value1, value2, "servermoney");
            return (Criteria) this;
        }

        public Criteria andChargeamountIsNull() {
            addCriterion("chargeamount is null");
            return (Criteria) this;
        }

        public Criteria andChargeamountIsNotNull() {
            addCriterion("chargeamount is not null");
            return (Criteria) this;
        }

        public Criteria andChargeamountEqualTo(BigDecimal value) {
            addCriterion("chargeamount =", value, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountNotEqualTo(BigDecimal value) {
            addCriterion("chargeamount <>", value, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountGreaterThan(BigDecimal value) {
            addCriterion("chargeamount >", value, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("chargeamount >=", value, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountLessThan(BigDecimal value) {
            addCriterion("chargeamount <", value, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("chargeamount <=", value, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountIn(List<BigDecimal> values) {
            addCriterion("chargeamount in", values, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountNotIn(List<BigDecimal> values) {
            addCriterion("chargeamount not in", values, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("chargeamount between", value1, value2, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargeamountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("chargeamount not between", value1, value2, "chargeamount");
            return (Criteria) this;
        }

        public Criteria andChargtypeIsNull() {
            addCriterion("chargtype is null");
            return (Criteria) this;
        }

        public Criteria andChargtypeIsNotNull() {
            addCriterion("chargtype is not null");
            return (Criteria) this;
        }

        public Criteria andChargtypeEqualTo(Long value) {
            addCriterion("chargtype =", value, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeNotEqualTo(Long value) {
            addCriterion("chargtype <>", value, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeGreaterThan(Long value) {
            addCriterion("chargtype >", value, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeGreaterThanOrEqualTo(Long value) {
            addCriterion("chargtype >=", value, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeLessThan(Long value) {
            addCriterion("chargtype <", value, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeLessThanOrEqualTo(Long value) {
            addCriterion("chargtype <=", value, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeIn(List<Long> values) {
            addCriterion("chargtype in", values, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeNotIn(List<Long> values) {
            addCriterion("chargtype not in", values, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeBetween(Long value1, Long value2) {
            addCriterion("chargtype between", value1, value2, "chargtype");
            return (Criteria) this;
        }

        public Criteria andChargtypeNotBetween(Long value1, Long value2) {
            addCriterion("chargtype not between", value1, value2, "chargtype");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumIsNull() {
            addCriterion("muzzlenum is null");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumIsNotNull() {
            addCriterion("muzzlenum is not null");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumEqualTo(Long value) {
            addCriterion("muzzlenum =", value, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumNotEqualTo(Long value) {
            addCriterion("muzzlenum <>", value, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumGreaterThan(Long value) {
            addCriterion("muzzlenum >", value, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumGreaterThanOrEqualTo(Long value) {
            addCriterion("muzzlenum >=", value, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumLessThan(Long value) {
            addCriterion("muzzlenum <", value, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumLessThanOrEqualTo(Long value) {
            addCriterion("muzzlenum <=", value, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumIn(List<Long> values) {
            addCriterion("muzzlenum in", values, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumNotIn(List<Long> values) {
            addCriterion("muzzlenum not in", values, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumBetween(Long value1, Long value2) {
            addCriterion("muzzlenum between", value1, value2, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andMuzzlenumNotBetween(Long value1, Long value2) {
            addCriterion("muzzlenum not between", value1, value2, "muzzlenum");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(BigDecimal value) {
            addCriterion("price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(BigDecimal value) {
            addCriterion("price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(BigDecimal value) {
            addCriterion("price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(BigDecimal value) {
            addCriterion("price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<BigDecimal> values) {
            addCriterion("price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<BigDecimal> values) {
            addCriterion("price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andDiscountIsNull() {
            addCriterion("discount is null");
            return (Criteria) this;
        }

        public Criteria andDiscountIsNotNull() {
            addCriterion("discount is not null");
            return (Criteria) this;
        }

        public Criteria andDiscountEqualTo(BigDecimal value) {
            addCriterion("discount =", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountNotEqualTo(BigDecimal value) {
            addCriterion("discount <>", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountGreaterThan(BigDecimal value) {
            addCriterion("discount >", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("discount >=", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountLessThan(BigDecimal value) {
            addCriterion("discount <", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("discount <=", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountIn(List<BigDecimal> values) {
            addCriterion("discount in", values, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountNotIn(List<BigDecimal> values) {
            addCriterion("discount not in", values, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount between", value1, value2, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount not between", value1, value2, "discount");
            return (Criteria) this;
        }

        public Criteria andPaymothodIsNull() {
            addCriterion("paymothod is null");
            return (Criteria) this;
        }

        public Criteria andPaymothodIsNotNull() {
            addCriterion("paymothod is not null");
            return (Criteria) this;
        }

        public Criteria andPaymothodEqualTo(Long value) {
            addCriterion("paymothod =", value, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodNotEqualTo(Long value) {
            addCriterion("paymothod <>", value, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodGreaterThan(Long value) {
            addCriterion("paymothod >", value, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodGreaterThanOrEqualTo(Long value) {
            addCriterion("paymothod >=", value, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodLessThan(Long value) {
            addCriterion("paymothod <", value, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodLessThanOrEqualTo(Long value) {
            addCriterion("paymothod <=", value, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodIn(List<Long> values) {
            addCriterion("paymothod in", values, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodNotIn(List<Long> values) {
            addCriterion("paymothod not in", values, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodBetween(Long value1, Long value2) {
            addCriterion("paymothod between", value1, value2, "paymothod");
            return (Criteria) this;
        }

        public Criteria andPaymothodNotBetween(Long value1, Long value2) {
            addCriterion("paymothod not between", value1, value2, "paymothod");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNull() {
            addCriterion("ordernum is null");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNotNull() {
            addCriterion("ordernum is not null");
            return (Criteria) this;
        }

        public Criteria andOrdernumEqualTo(String value) {
            addCriterion("ordernum =", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotEqualTo(String value) {
            addCriterion("ordernum <>", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThan(String value) {
            addCriterion("ordernum >", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThanOrEqualTo(String value) {
            addCriterion("ordernum >=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThan(String value) {
            addCriterion("ordernum <", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThanOrEqualTo(String value) {
            addCriterion("ordernum <=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLike(String value) {
            addCriterion("ordernum like", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotLike(String value) {
            addCriterion("ordernum not like", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumIn(List<String> values) {
            addCriterion("ordernum in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotIn(List<String> values) {
            addCriterion("ordernum not in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumBetween(String value1, String value2) {
            addCriterion("ordernum between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotBetween(String value1, String value2) {
            addCriterion("ordernum not between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("createtime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("createtime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("createtime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("createtime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("createtime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("createtime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("createtime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("createtime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("createtime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("createtime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("createtime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("createtime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andBackordernumIsNull() {
            addCriterion("backordernum is null");
            return (Criteria) this;
        }

        public Criteria andBackordernumIsNotNull() {
            addCriterion("backordernum is not null");
            return (Criteria) this;
        }

        public Criteria andBackordernumEqualTo(String value) {
            addCriterion("backordernum =", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumNotEqualTo(String value) {
            addCriterion("backordernum <>", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumGreaterThan(String value) {
            addCriterion("backordernum >", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumGreaterThanOrEqualTo(String value) {
            addCriterion("backordernum >=", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumLessThan(String value) {
            addCriterion("backordernum <", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumLessThanOrEqualTo(String value) {
            addCriterion("backordernum <=", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumLike(String value) {
            addCriterion("backordernum like", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumNotLike(String value) {
            addCriterion("backordernum not like", value, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumIn(List<String> values) {
            addCriterion("backordernum in", values, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumNotIn(List<String> values) {
            addCriterion("backordernum not in", values, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumBetween(String value1, String value2) {
            addCriterion("backordernum between", value1, value2, "backordernum");
            return (Criteria) this;
        }

        public Criteria andBackordernumNotBetween(String value1, String value2) {
            addCriterion("backordernum not between", value1, value2, "backordernum");
            return (Criteria) this;
        }

        public Criteria andPowersupplyIsNull() {
            addCriterion("powerSupply is null");
            return (Criteria) this;
        }

        public Criteria andPowersupplyIsNotNull() {
            addCriterion("powerSupply is not null");
            return (Criteria) this;
        }

        public Criteria andPowersupplyEqualTo(String value) {
            addCriterion("powerSupply =", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyNotEqualTo(String value) {
            addCriterion("powerSupply <>", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyGreaterThan(String value) {
            addCriterion("powerSupply >", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyGreaterThanOrEqualTo(String value) {
            addCriterion("powerSupply >=", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyLessThan(String value) {
            addCriterion("powerSupply <", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyLessThanOrEqualTo(String value) {
            addCriterion("powerSupply <=", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyLike(String value) {
            addCriterion("powerSupply like", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyNotLike(String value) {
            addCriterion("powerSupply not like", value, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyIn(List<String> values) {
            addCriterion("powerSupply in", values, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyNotIn(List<String> values) {
            addCriterion("powerSupply not in", values, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyBetween(String value1, String value2) {
            addCriterion("powerSupply between", value1, value2, "powersupply");
            return (Criteria) this;
        }

        public Criteria andPowersupplyNotBetween(String value1, String value2) {
            addCriterion("powerSupply not between", value1, value2, "powersupply");
            return (Criteria) this;
        }

        public Criteria andStarttimeIsNull() {
            addCriterion("starttime is null");
            return (Criteria) this;
        }

        public Criteria andStarttimeIsNotNull() {
            addCriterion("starttime is not null");
            return (Criteria) this;
        }

        public Criteria andStarttimeEqualTo(Date value) {
            addCriterion("starttime =", value, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeNotEqualTo(Date value) {
            addCriterion("starttime <>", value, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeGreaterThan(Date value) {
            addCriterion("starttime >", value, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeGreaterThanOrEqualTo(Date value) {
            addCriterion("starttime >=", value, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeLessThan(Date value) {
            addCriterion("starttime <", value, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeLessThanOrEqualTo(Date value) {
            addCriterion("starttime <=", value, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeIn(List<Date> values) {
            addCriterion("starttime in", values, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeNotIn(List<Date> values) {
            addCriterion("starttime not in", values, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeBetween(Date value1, Date value2) {
            addCriterion("starttime between", value1, value2, "starttime");
            return (Criteria) this;
        }

        public Criteria andStarttimeNotBetween(Date value1, Date value2) {
            addCriterion("starttime not between", value1, value2, "starttime");
            return (Criteria) this;
        }

        public Criteria andEndtimeIsNull() {
            addCriterion("endtime is null");
            return (Criteria) this;
        }

        public Criteria andEndtimeIsNotNull() {
            addCriterion("endtime is not null");
            return (Criteria) this;
        }

        public Criteria andEndtimeEqualTo(Date value) {
            addCriterion("endtime =", value, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeNotEqualTo(Date value) {
            addCriterion("endtime <>", value, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeGreaterThan(Date value) {
            addCriterion("endtime >", value, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("endtime >=", value, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeLessThan(Date value) {
            addCriterion("endtime <", value, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeLessThanOrEqualTo(Date value) {
            addCriterion("endtime <=", value, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeIn(List<Date> values) {
            addCriterion("endtime in", values, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeNotIn(List<Date> values) {
            addCriterion("endtime not in", values, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeBetween(Date value1, Date value2) {
            addCriterion("endtime between", value1, value2, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndtimeNotBetween(Date value1, Date value2) {
            addCriterion("endtime not between", value1, value2, "endtime");
            return (Criteria) this;
        }

        public Criteria andEndReasonIsNull() {
            addCriterion("end_reason is null");
            return (Criteria) this;
        }

        public Criteria andEndReasonIsNotNull() {
            addCriterion("end_reason is not null");
            return (Criteria) this;
        }

        public Criteria andEndReasonEqualTo(Long value) {
            addCriterion("end_reason =", value, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonNotEqualTo(Long value) {
            addCriterion("end_reason <>", value, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonGreaterThan(Long value) {
            addCriterion("end_reason >", value, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonGreaterThanOrEqualTo(Long value) {
            addCriterion("end_reason >=", value, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonLessThan(Long value) {
            addCriterion("end_reason <", value, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonLessThanOrEqualTo(Long value) {
            addCriterion("end_reason <=", value, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonIn(List<Long> values) {
            addCriterion("end_reason in", values, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonNotIn(List<Long> values) {
            addCriterion("end_reason not in", values, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonBetween(Long value1, Long value2) {
            addCriterion("end_reason between", value1, value2, "endReason");
            return (Criteria) this;
        }

        public Criteria andEndReasonNotBetween(Long value1, Long value2) {
            addCriterion("end_reason not between", value1, value2, "endReason");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}